using System;
#if !PocketPC
using System.Runtime.Serialization;
#endif
using System.Reflection;

namespace GeoFramework
{
	/// <summary>
	/// Represents information about an GarminText sentence processing error.
	/// </summary>
#if !PocketPC || DesignTime
#if Framework20
	[Obfuscation(Feature = "renaming", Exclude = false, ApplyToMembers = true)]
    [Obfuscation(Feature = "controlflow", Exclude = true, ApplyToMembers = true)]
    [Obfuscation(Feature = "stringencryption", Exclude = false, ApplyToMembers = true)]
#endif
    [Serializable]
#endif
    public sealed class TimeoutException : Exception
    {
		public TimeoutException() 
            : base()
		{
		}
	
		public TimeoutException(string message) 
            : base(message)
		{
		}
	
		public TimeoutException(string message, Exception innerException) 
            : base(message, innerException)
		{
		}

#if !PocketPC
        private TimeoutException(SerializationInfo info, StreamingContext context)
            : base(info, context)
        {}
#endif
	}

    public sealed class TimeoutExceptionEventArgs : EventArgs
	{
		private TimeoutException sSentenceException;

		public new static readonly TimeoutExceptionEventArgs Empty = new TimeoutExceptionEventArgs(null);

		public TimeoutExceptionEventArgs(TimeoutException exception)
		{
			sSentenceException = exception;
		}

		public TimeoutException TimeoutException
		{
			get
			{
				return sSentenceException;
			}
		}
	}


}
